<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2017 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: 李邦琦 <1536549251@qq.com>
// +----------------------------------------------------------------------

namespace app\crm\model;
use think\Db;
use think\Model;
use think\Cache;
use think\Loader;

class Visit extends Model
{
    /**
     * 缓存信息
     */
    protected function visitcache ()
    {
        $visit_result = Db::name('vip_visit_result')->where("enabled='Y'")->select();
        $visit_type = Db::name('vip_visit_type')->where("enabled='Y'")->select();
        $result['visit_result'] = $visit_result;
        $result['visit_type'] = $visit_type;
        Cache::set('visitSelect', $result);
        foreach ($visit_result as $k => $v) {
            $data['visit_result'][$v['id']] = $v;
        }
        foreach ($visit_type as $k => $v) {
            $data['visit_type'][$v['id']] = $v;
        }
        Cache::set('visit', $data);
    }


    /**
     * 获取回访结果列表
     * @param int $page <页码>
     * @param int $limit <每页显示条数>
     * @return array <日报列表信息>
     */
    public function visitResultData($page,$limit)
    {
        $count = Db::name('vip_visit_result')->count();
        // 查询状态为1的用户数据 并且每页显示10条数据
        $visitResult = Db::name('vip_visit_result')->limit(($page-1)*$limit,$limit)->order('id ASC')->select();
        foreach ($visitResult as &$val) {
            $val['enabled'] = $val['enabled']=='Y'?'显示':'不显示';
        }
        $rowsList = count($visitResult) ? $visitResult : false;
        $arrData["code"] = 0;
        $arrData["msg"] = '';
        $arrData["count"] = $count;
        $arrData["data"] = $rowsList;
        return $arrData;
    }


    /**
     * 获取回访结果列表
     * @param int $page <页码>
     * @param int $limit <每页显示条数>
     * @return array <日报列表信息>
     */
    public function visitTypeData($page,$limit)
    {
        $count = Db::name('vip_visit_type')->count();
        // 查询状态为1的用户数据 并且每页显示10条数据
        $visitResult = Db::name('vip_visit_type')->limit(($page-1)*$limit,$limit)->order('id ASC')->select();
        foreach ($visitResult as &$val) {
            $val['enabled'] = $val['enabled']=='Y'?'显示':'不显示';
        }
        $rowsList = count($visitResult) ? $visitResult : false;
        $arrData["code"] = 0;
        $arrData["msg"] = '';
        $arrData["count"] = $count;
        $arrData["data"] = $rowsList;
        return $arrData;
    }


    /**
     * 删除回访结果
     * @param  string $id 回访结果id
     * @return json       删除状态
     */
    public function delVisitSelect ($table, $id)
    {
        $result = Db::name($table)->delete($id);
        if ($result) {
            $this->visitcache();
            echo json_encode(array('success'=>true,'msg'=>'删除成功！'));
        } else {
            echo json_encode(array('msg'=>'删除失败！'));
        }
    }


    /**
     * 新增选项
     * @param string $table 表(结果/类型)
     * @param array  $data  数据
     * @return json         新增状态
     */
    public function addVisitSelect ($table, $data)
    {
        $result = Db::name($table)->insert($data);
        if ($result) {
            $this->visitcache();
            echo json_encode(array('success'=>true,'msg'=>'添加成功！'));
        } else {
            echo json_encode(array('msg'=>'添加失败！'));
        }
    }


    /**
     * 编辑选项
     * @param string $table 表(结果/类型)
     * @param array  $data  数据
     * @return json         新增状态
     */
    public function updateVisitSelect ($table, $data)
    {
        $result = Db::name($table)->update($data);
        if ($result) {
            $this->visitcache();
            echo json_encode(array('success'=>true,'msg'=>'编辑成功！'));
        } else {
            echo json_encode(array('msg'=>'编辑失败！'));
        }
    }


    /**
     * 获取单条选项信息
     * @param string $table 表(结果/类型)
     * @param string $id    数据id
     * @return array        选项信息
     */
    public function getVisitSelect ($table, $id)
    {
        $result = Db::name($table)->where("id=$id")->find();
        return $result;
    }


}